package com.ruihui.activity.service;

import com.ruihui.activity.pojo.Acgoods;
import com.ruihui.activity.pojo.Acgroup;

import java.util.List;

import com.baomidou.mybatisplus.service.IService;

/**
 * <p>
 * 团购 服务类
 * </p>
 *
 * @author cf123
 * @since 2018-10-29
 */
public interface AcgroupService extends IService<Acgroup> {
	
	/**
	 * 用户此商品活动期间发起团购次数
	 * @param memberId	用户id
	 * @param goodsid	商品id
	 * @param acgoods	活动对象
	 * @return
	 */
	int getCreateCount(Integer memberId, Long goodsid, Acgoods acgoods);
	/**
	 * 用户此商品活动期间加入团购次数
	 * @param memberId 用户id
	 * @param goodsid	商品id
	 * @param acgoods	活动对象
	 * @return
	 */
	int getAddCount(Integer memberId, Long goodsid, Acgoods acgoods);
	/**
	 * 创建团购
	 * @param acgoods 活动对象
	 * @param memberId	用户id
	 * @param goodsid	商品id
	 * @param orderid	订单id
	 * @param username	用户名
	 * @return
	 */
	int createGroup(Acgoods acgoods, Integer memberId, Long goodsid, Long orderid, String username);
	/**
	 * 加入团购
	 * @param memberId	用户id
	 * @param groupno	团号
	 * @param orderid	订单id
	 * @param username	用户名
	 * @return
	 */
	int addGroup(Integer memberId, String groupno, Long orderid, String username);
	/**
	 * 验证团组是否满员
	 * @param groupno 团号
	 * @return
	 */
	List<Acgroup> validateAcgroup(String groupno);
	/**
	 * 24小时中退出团组
	 * @param memberId
	 * @param groupno
	 * @return
	 */
	int backGroup(Integer memberId,String groupno);
	/**
	 * 24小时之后进行退款发货收货
	 * @param memberId
	 * @param orderid
	 * @param otype 
	 * @return
	 */
	int backpay(Integer memberId, Long orderid, Integer otype);
	/**
	 * 验证用户是否是团长
	 * @param memberId
	 * @param groupno
	 * @return
	 */
	boolean isHead(Integer memberId, String groupno);


}
